(0) Obligation:
The Runtime Complexity (innermost) of the given
CpxTRS could be proven to be
BOUNDS(1, 1).
The TRS R consists of the following rules:
zeros → cons(0, n__zeros)
tail(cons(X, XS)) → activate(XS)
zeros → n__zeros
activate(n__zeros) → zeros
activate(X) → X
Rewrite Strategy: INNERMOST
(1) CpxTrsMatchBoundsTAProof (EQUIVALENT transformation)
A linear upper bound on the runtime complexity of the TRS R could be shown with a Match-Bound[TAB_LEFTLINEAR,TAB_NONLEFTLINEAR] (for contructor-based start-terms) of 2.
The compatible tree automaton used to show the Match-Boundedness (for constructor-based start-terms) is represented by:
final states : [1, 2, 3]
transitions:
cons0(0, 0) → 0
00() → 0
n__zeros0() → 0
zeros0() → 1
tail0(0) → 2
activate0(0) → 3
01() → 4
n__zeros1() → 5
cons1(4, 5) → 1
activate1(0) → 2
n__zeros1() → 1
zeros1() → 3
02() → 6
n__zeros2() → 7
cons2(6, 7) → 3
n__zeros2() → 3
zeros1() → 2
cons2(6, 7) → 2
n__zeros2() → 2
0 → 3
0 → 2
(2) BOUNDS(1, n^1)
(3) CpxTrsToCdtProof (BOTH BOUNDS(ID, ID) transformation)
Converted Cpx (relative) TRS to CDT
(4) Obligation:
Complexity Dependency Tuples Problem
Rules:
zeros → cons(0, n__zeros)
zeros → n__zeros
tail(cons(z0, z1)) → activate(z1)
activate(n__zeros) → zeros
activate(z0) → z0
Tuples:
ZEROS → c
ZEROS → c1
TAIL(cons(z0, z1)) → c2(ACTIVATE(z1))
ACTIVATE(n__zeros) → c3(ZEROS)
ACTIVATE(z0) → c4
S tuples:
ZEROS → c
ZEROS → c1
TAIL(cons(z0, z1)) → c2(ACTIVATE(z1))
ACTIVATE(n__zeros) → c3(ZEROS)
ACTIVATE(z0) → c4
K tuples:none
Defined Rule Symbols:
zeros, tail, activate
Defined Pair Symbols:
ZEROS, TAIL, ACTIVATE
Compound Symbols:
c, c1, c2, c3, c4
(5) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID) transformation)
Removed 5 trailing nodes:
ACTIVATE(n__zeros) → c3(ZEROS)
ZEROS → c1
ZEROS → c
ACTIVATE(z0) → c4
TAIL(cons(z0, z1)) → c2(ACTIVATE(z1))
(6) Obligation:
Complexity Dependency Tuples Problem
Rules:
zeros → cons(0, n__zeros)
zeros → n__zeros
tail(cons(z0, z1)) → activate(z1)
activate(n__zeros) → zeros
activate(z0) → z0
Tuples:none
S tuples:none
K tuples:none
Defined Rule Symbols:
zeros, tail, activate
Defined Pair Symbols:none
Compound Symbols:none
(7) SIsEmptyProof (BOTH BOUNDS(ID, ID) transformation)
The set S is empty
(8) BOUNDS(1, 1)